package com.yunyao.framework.vo.material;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author xingjishuai
 * @date 2024-07-24
 */
@Data
public class MaterialVO implements Serializable {
    private static final long serialVersionUID = -1282254233680171394L;
    /**
     * 主键
     */
    private String id;

    private String uuid;

    /**
     * 租户ID
     */
    private String tenantId;

    /**
     * 材料类型
     */
    private String settleType;

    private String materialCategoryId;

    private String materialCategoryCode;

    private String materialCategoryName;

    /**
     * 材料编号
     */
    private String materialCode;

    private String materialModel;

    private String materialTexture;

    /**
     * 材料名称
     */
    private String materialName;

    /**
     * 材料规格
     */
    private String materialSpecifications;

    /**
     * 材料单位
     */
    private String materialUnit;

    private Integer contractCount;

    private Integer orderCount;

    /**
     * 材料简介
     */
    private String materialProfile;

    private String materialDesc;

    private String taxClassCode;

    private String taxClassName;

    @TableField("`status`")
    private Integer status;

    /**
     * 材料最低价
     */
    private BigDecimal minPrice;

    /**
     * 材料最低价时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date minPriceDate;

    /**
     * 材料最高价
     */
    private BigDecimal maxPrice;

    /**
     * 材料最高价时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date maxPriceDate;

    /**
     * 最低价对应的销售合同ID
     */
    private String minContractId;

    /**
     * 最低价对应的采购订单ID
     */
    private String minPurchaseApplyId;

    /**
     * 最高价对应的销售合同ID
     */
    private String maxContractId;

    /**
     * 最高价对应的采购订单ID
     */
    private String maxPurchaseApplyId;
}
